package com.fyy.socket.tcp.thread;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * @Author fyy
 * @Description
 * @Date 2020/12/10 11:03
 */
public class LoginServer {
    /**
     * 服务器一直运行
     * 方法一：只引入while(不可行)，缺点：程序处理连接+业务逻辑时间太长，
     *          程序串行执行，必须等待上一个连接处理完毕才可以处理下一个连接
     * 方法二：引入while+多线程，程序处理连接+创建线程，可同时处理多个客户端请求
     */
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        //开启服务,指定监听端口
        ServerSocket socketServer = new ServerSocket(8080);
        while(true){
            //在等待的接口监听
            Socket socket = socketServer.accept(); //等待客户端连接，没有连接程序在此阻塞
            LoginThread loginThread = new LoginThread(socket);
            loginThread.start();
        }

    }

}
